package org.jeecg.modules.service;

import org.jeecg.modules.entity.CuPaymentOrders;
import org.jeecg.modules.entity.CuUserDetails;
import org.jeecg.modules.entity.CuVipCard;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.payment.vo.PaymentResponse;

import java.util.List;

/**
 * @Description: 会员卡卷
 * @Author: jeecg-boot
 * @Date: 2024-07-17
 * @Version: V1.0
 */
public interface ICuVipCardService extends IService<CuVipCard> {

    /**
     * 获取显示列表
     *
     * @return
     */
    List<CuVipCard> vipList();

    /**
     * 添加
     *
     * @param vipCard 实体对象
     * @return
     */
    boolean save(CuVipCard vipCard);

    /**
     * 编辑
     *
     * @param vipCard
     * @return
     */
    boolean updateById(CuVipCard vipCard);

    /**
     * 删除
     *
     * @param id
     * @return
     */
    boolean removeById(String id);

    /**
     * 批量删除
     *
     * @param ids
     * @return
     */
    boolean removeByIds(List<String> ids);

    /**
     * 通过id查询
     *
     * @param id
     * @return
     */
    CuVipCard getById(String id);

    /**
     * 购买会员卡卷
     * 成功返回 下单链接
     */
    PaymentResponse buyVipCard(CuVipCard vipCard, CuUserDetails userDetails, String clientIp);

    /**
     * 支付结果处理
     */
    boolean payResult(CuPaymentOrders cuPaymentOrders);

}
